Skip to content

Pull renaming change from haxe-numeric branch#12852

Merged
Simn merged 2 commits intodevelopmentfrom
haxe-numeric-merge-2
Mar 20, 2026
Merged

Pull renaming change from haxe-numeric branch#12852
Simn merged 2 commits intodevelopmentfrom
haxe-numeric-merge-2

Conversation

@Simn
Copy link
Member

@Simn Simn commented Mar 20, 2026

The UInt to haxe.UInt32 renaming. This breaks HL for me locally, so I'll have to check what's happening. Should also not be controversial otherwise.

Edit: Never mind, apparently I simply didn't recompile the compiler.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the codebase to use haxe.UInt32 as the canonical unsigned 32-bit integer type, while keeping UInt as a compatibility alias, and adjusts compiler backends + tests accordingly.

Changes:

  • Replace direct UInt usages in stdlib and tests with haxe.UInt32, updating expected typing/display outputs.
  • Introduce std/haxe/UInt32.hx and change std/UInt.hx to typedef UInt = haxe.UInt32.
  • Update compiler typing (u32 suffix) and several generators/loaders (SWF, HL, Python, hxold) to recognize haxe.UInt32.

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
tests/unit/src/unit/issues/Issue2990.hx Updates type string expectations to TAbstract(haxe.UInt32,[]).
tests/server/src/cases/issues/Issue8004.hx Adjusts workspace symbol assertion from UInt to UInt32.
tests/misc/eval/projects/Issue4712/Main.hx Updates eval regression to use haxe.UInt32.
std/hl/_std/haxe/io/Bytes.hx Replaces unsigned bound checks from UInt casts to haxe.UInt32.
std/hl/_std/haxe/UInt32.hx Renames HL-specific abstract from UInt to UInt32 and adds package haxe;.
std/hl/_std/String.hx Updates index/bounds logic casts to haxe.UInt32.
std/haxe/UInt32.hx Adds the cross-platform haxe.UInt32 definition (coreType on flash/hl; simulated elsewhere).
std/UInt.hx Replaces old implementation with typedef UInt = haxe.UInt32 (intended compatibility layer).
src/typing/typer.ml Updates u32 numeric suffix typing to check against haxe.UInt32.
src/generators/genswf9.ml Updates SWF generator’s core-type handling and classification to recognize haxe.UInt32.
src/generators/genpy.ml Skips emitting Python stubs for haxe.UInt32 (like prior UInt).
src/generators/genhxold.ml Ensures hxold generator treats haxe.UInt32 like numeric zero-default abstract.
src/generators/genhl.ml Updates HL generator’s unsigned detection and core-type mapping for haxe.UInt32.
src/codegen/swfLoader.ml Maps AS3 uint to haxe.UInt32 and updates enum-abstract detection patterns.

@Simn Simn merged commit 847a8fe into development Mar 20, 2026
16 checks passed
@Simn Simn deleted the haxe-numeric-merge-2 branch March 20, 2026 19:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants